const fs = require('fs');

const userService = require("../service/user_service");
const fileService = require('../service/file.service');
const { AVATAR_PATH,UPLOAD_PATH } = require('../constants/file-path');
class UserController {
  async create(ctx, next) {
    // 1.获取用户传递过来信息
    const user = ctx.request.body;
    console.log(user, "user");

    // 2.将user信息存储到数据库中
    const result = await userService.create(user);
    // 3.查看存储的结果, 告知前端创建成功
    ctx.body = {
      message: "创建用户成功~",
      data: result,
    };
  }

  async avatarInfo(ctx, next) {
    // 1.用户的头像是哪一个文件呢?
    const { userId } = ctx.params;
 
    const avatarInfo = await fileService.getAvatarByUserId(userId);
     console.log(avatarInfo,'SELECT * FROM avatar WHERE user_id =');
    // 2.提供图像信息
    ctx.response.set('content-type', avatarInfo.mimetype);
    ctx.body = fs.createReadStream(`${UPLOAD_PATH}/${avatarInfo.filename}`);
  }
  
}

// 函数的方式
// const   UserController = function (ctx, next) {
//     // 1.获取用户传递过来信息
//     const user = ctx.request.body
//     // 2.将user信息存储到数据库中
//     // userService.create(user)

//     // 3.查看存储的结果, 告知前端创建成功
//     ctx.body = {
//         message: '创建用户成功~',
//     }
// }

module.exports = new UserController();
